'use strict';

const Subscription = require('egg').Subscription;

class RedisNotice extends Subscription {
  // 通过 schedule 属性来设置定时任务的执行间隔等配置
  static get schedule() {
    return {
      // immediate: true, // 启动时先执行一次任务
      interval: '1m', // 间隔时间
      // cron: '0 5 * * * *', // 每小时的第5分钟执行
      type: 'all', // 指定所有的 worker 都需要执行
    };
  }

  // subscribe 是真正定时任务执行时被运行的函数
  async subscribe() {
    const ctx = this.ctx;
    ctx.service.redis.sendPublish('ManageNotice', JSON.stringify({event:1}));
  }
}

module.exports = RedisNotice;
